package com.yqg.protection.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;

/**
 * video_device 实体类
 *
 * @author zxf
 * @since 2024-09-14
 */
@Getter
@Setter
@TableName("video_device")
@ApiModel(value = "VideoDevice对象", description = "")
public class VideoDevice implements Serializable {

    private static final long serialVersionUID = 1L;

    @ExcelProperty(value = "ID",index = 0)
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ExcelProperty(value = "设备名称",index = 1)
    @ApiModelProperty("设备名称")
    private String name;

    @ExcelProperty(value = "单位ID",index = 2)
    private Long clientId;

    @ExcelProperty(value = "单位名称",index = 3)
    @TableField(exist = false)
    @ApiModelProperty("单位名称")
    private String clientName;

    @ExcelProperty(value = "组织ID",index = 4)
    private Long organization;

    @ExcelProperty(value = "设备编号",index = 5)
    @ApiModelProperty("设备编号")
    private String deviceId;

    @ExcelProperty(value = "appKey",index = 6)
    @ApiModelProperty("海康提供的appKey")
    private String appKey;

    @ExcelProperty(value = "secret",index = 7)
    @ApiModelProperty("海康提供的secret")
    private String secret;

//    @ExcelProperty(value = "是否绑定SIM卡",index = 8, converter = BindingConverter.class)
//    @ApiModelProperty("0未绑定SIM卡 ，1已绑定SIM卡")
//    private Integer deviceBindingSim;
//
//    @ExcelProperty(value = "SIM卡ID",index = 9)
//    @TableField(updateStrategy = FieldStrategy.IGNORED)
//    private Long simInputStoreId;

    @ExcelProperty(value = "SIM卡号",index = 8)
    @ApiModelProperty("SIM卡号")
//    @TableField(exist = false)
    private String simId;

    @ExcelProperty(value = "设备品牌",index = 9)
    @ApiModelProperty("设备品牌")
    private String deviceBrand;

    @ExcelProperty(value = "接入协议",index = 10)
    @ApiModelProperty("接入协议")
    private String accessProtocol;

    @ExcelProperty(value = "IP地址及端口号",index = 11)
    @ApiModelProperty("IP地址及端口号")
    private String ipPort;

    @ExcelProperty(value = "设备序列号",index = 12)
    @ApiModelProperty("设备序列号")
    private String deviceNum;

    @ExcelProperty(value = "监控点编号",index = 13)
    @ApiModelProperty("监控点编号")
    private String monitorNum;

    @ExcelProperty(value = "说明",index = 14)
    @ApiModelProperty("说明")
    private String explanation;

    @ExcelIgnore
    private Integer isDelete;

    @ExcelProperty(value = "组织名称",index = 15)
    @TableField(exist = false)
    private String organizationName;

    @ApiModelProperty("监控设备识别码")
    @ExcelProperty(value = "监控设备识别码",index = 16)
    private String equipmentId;

    @ExcelProperty(value = "监控设备名称",index = 17)
    @TableField(exist = false)
    private String equipmentName;
}
